Skip to content

feat(mztab-m): add an mzTab-M data source and query layer - #62

Merged
oss6 merged 1 commit into
develfrom
feature/51/support-mztab-m
Oct 25, 2026
Merged

oss6 merged 1 commit into
develfrom
feature/51/support-mztab-m

Conversation

@oss6

@oss6 oss6 commented Oct 25, 2026

Copy link
Copy Markdown
Member

Add MzTabMSource(), which reads the small molecule features (SMF) of an mzTab-M 2.0 file and pairs them with the raw files they came from, and lp_mztab(), which selects the features to plot with a query such as "reliability <= 2". As MS-DIAL, MZmine and OpenMS all export mzTab-M, this one source covers several tools.

The source extends ExternalDataSource. Assays are mapped to sample paths through their ms_run locations, matched by basename (and without the extension as a fallback). Features are annotated with the name, formula, database identifier and reliability of the SML rows that reference them; a feature claimed by several SML rows keeps the first and is flagged as ambiguous. Since one compound is often reported as several adduct features, create_compound_chromatograms() gains a key argument and the mzTab-M chromatograms are keyed by SMF_ID instead of name.

The vignette now plots a real example: the HUPO-PSI MTBLS263 mzTab-M file (Progenesis QI) with its MetaboLights raw files, cut down to eight features and shipped in inst/extdata. tools/mztab rebuilds it. Bump the version to 1.1.19.

Closes #51.

Add MzTabMSource(), which reads the small molecule features (SMF) of an
mzTab-M 2.0 file and pairs them with the raw files they came from, and
lp_mztab(), which selects the features to plot with a query such as
"reliability <= 2". As MS-DIAL, MZmine and OpenMS all export mzTab-M,
this one source covers several tools.

The source extends ExternalDataSource. Assays are mapped to sample paths
through their ms_run locations, matched by basename (and without the
extension as a fallback). Features are annotated with the name, formula,
database identifier and reliability of the SML rows that reference them;
a feature claimed by several SML rows keeps the first and is flagged as
ambiguous. Since one compound is often reported as several adduct
features, create_compound_chromatograms() gains a key argument and the
mzTab-M chromatograms are keyed by SMF_ID instead of name.

The vignette now plots a real example: the HUPO-PSI MTBLS263 mzTab-M file
(Progenesis QI) with its MetaboLights raw files, cut down to eight
features and shipped in inst/extdata. tools/mztab rebuilds it. Bump the
version to 1.1.19.

Closes #51.
@oss6
oss6 merged commit e1ea79a into devel Oct 25, 2026
1 check passed
@oss6
oss6 deleted the feature/51/support-mztab-m branch October 25, 2026 21:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Support mzTab-M as a data source

1 participant